<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="/js/jq/jquery.js"></script>
</head>
<body>
    <input type="button" value="ajax" onclick="sendAjax1()">
    <input type="button" value="ajax" onclick="sendAjax2()">
    <script>
        /*   
        $.ajax(url,{
           
           method：请求类型（get|post|put……）
           data：请求参数（string|object|array……）
           traditional:Boolean设置data对象参数的转换规则，默认false
           headers：请求头设置（object）
           dataType:从服务器返回的预期的数据类型
           success:当请求成功后执行的回调函数
           error:请求失败的回调函数

       }); 
       注意：jquery的ajax而言，所有的请求默认都会携带请求头X-requested-With:XMLHttpRequest,用于描述请求为ajax请求
       */

       function sendAjax1(){
            // $.ajax(url,对象格式的数据)
            // $.ajax(对象格式的数据)
            // $.ajax("/jquery/test",{
            //     success:function(res){
            //         console.log(res);
            //     }
            // });


            $.ajax({
                url:"/jquery/test2",
                method:"get",
                // data:"a=1&b=2",
                data:{
                    username:"alice",
                    age:20,
                    skill:['html','css','js']
                },
                traditional:true,//如果传递的对象数据中有数组格式，数组会以skills[]:html这样的方式传递，后台不方便处理数据，所以设置为true，将变成：skills:html
                headers:{
                    token:Math.random(),
                    aa:'haha'
                },
                dataType:"json",
                success:function(data,textStatus,jqXHR){
                    console.log(data);
                    console.log("请求成功",textStatus);
                    console.log("请求成功",jqXHR);
                },
                error:function(jqXHR,textStatus,errorText){
                    console.log("-----");
                    console.log(jqXHR,textStatus,errorText);
                    if(jqXHR.readyState==0){
                        console.log("网络不通");
                    }else if(jqXHR.status>=400 && jqXHR.status<500){
                        console.log("资源无法访问");
                    }else if(jqXHR.status>=500 && jqXHR.status<600){
                        console.log("服务器异常");
                    }else{
                        console.log("请求失败");
                    }
                }
            });

       }
    </script>
</body>
</html>